package com.office.file.category.service.impl;

import java.util.List;
import com.office.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.office.file.category.mapper.FileCategoryMapper;
import com.office.file.category.domain.FileCategory;
import com.office.file.category.service.IFileCategoryService;

/**
 * 文件分类Service业务层处理
 * 
 * @author ruoyi
 * @date 2025-05-23
 */
@Service

public class FileCategoryServiceImpl implements IFileCategoryService
{
    @Autowired
    private FileCategoryMapper fileCategoryMapper;

    /**
     * 查询文件分类
     * 
     * @param categoryId 文件分类主键
     * @return 文件分类
     */
    @Override
    public FileCategory selectFileCategoryByCategoryId(Long categoryId)
    {
        return fileCategoryMapper.selectFileCategoryByCategoryId(categoryId);
    }

    /**
     * 查询文件分类列表
     * 
     * @param fileCategory 文件分类
     * @return 文件分类
     */
    @Override
    public List<FileCategory> selectFileCategoryList(FileCategory fileCategory)
    {
        return fileCategoryMapper.selectFileCategoryList(fileCategory);
    }

    /**
     * 新增文件分类
     * 
     * @param fileCategory 文件分类
     * @return 结果
     */
    @Override
    public int insertFileCategory(FileCategory fileCategory)
    {
        fileCategory.setCreateTime(DateUtils.getNowDate());
        return fileCategoryMapper.insertFileCategory(fileCategory);
    }

    /**
     * 修改文件分类
     * 
     * @param fileCategory 文件分类
     * @return 结果
     */
    @Override
    public int updateFileCategory(FileCategory fileCategory)
    {
        fileCategory.setUpdateTime(DateUtils.getNowDate());
        return fileCategoryMapper.updateFileCategory(fileCategory);
    }


    /**
     * 批量删除文件分类
     * 
     * @param categoryIds 需要删除的文件分类主键
     * @return 结果
     */
    @Override
    public int deleteFileCategoryByCategoryIds(Long[] categoryIds)
    {
        return fileCategoryMapper.deleteFileCategoryByCategoryIds(categoryIds);
    }

    /**
     * 删除文件分类信息
     * 
     * @param categoryId 文件分类主键
     * @return 结果
     */
    @Override
    public int deleteFileCategoryByCategoryId(Long categoryId)
    {
        return fileCategoryMapper.deleteFileCategoryByCategoryId(categoryId);
    }
}
